package demo.turkey;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 患者医嘱信息
 *
 * @author jilong.jiang
 * @date 2021-11-05
 */
public class PatientOrderDTO implements Serializable {
    /**
     * 费用流水号
     */
    private String feeId;
    /**
     * 收费项目编码 院内编码
     */
    private String itemCode;
    /**
     * 收费项目名称 院内名称
     */
    private String itemName;
    /**
     * 医保项目编码 贯标编码
     */
    private String insuranceCode;
    /**
     * 医保项目名称 贯标名称
     */
    private String insuranceName;
    /**
     * 医保费用等级
     */
    private String insuranceGrade;
    /**
     * 收费类型代码
     */
    private String itemTypeCode;
    /**
     * 收费类型名称
     */
    private String itemTypeName;
    /**
     * 火树费用小类代码
     */
    private String itemClassCode;
    /**
     * 火树费用小类名称
     */
    private String itemClassName;
    /**
     * 米加项目代码
     */
    private String mijaProjectCode;
    /**
     * 米加项目名称
     */
    private String mijaProjectName;
    /**
     * 费用项目发生时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    private Date chargeDate;
    /**
     * 数量
     */
    private BigDecimal amount;
    /**
     * 单价
     */
    private BigDecimal price;
    /**
     * 金额 金额 = 单价 * 数量
     */
    private BigDecimal fee;
    /**
     * 病区代码 该条费用记录发生时患者所在病区代码
     */
    private String currWardCode;
    /**
     * 科室代码 该条费用记录发生时患者所在科室代码
     */
    private String currDeptCode;
    /**
     * 医疗组代码 该条费用记录发生时所在医疗组代码
     */
    private String teamCode;
    /**
     * 项目开单医生代码 提交费用项目医生代码
     */
    private String orderDoctorCode;
    /**
     * 项目开单医生名称 提交费用项目医生名称
     */
    private String orderDoctorName;
    /**
     * 项目开单科室代码 提交费用项目科室代码
     */
    private String orderDeptCode;

    /**
     * 标准开单科室代码(学科类型代码)
     */
    private String orderDeptCodeStandard;
    /**
     * 项目开单科室名称 提交费用项目科室名称
     */
    private String orderDeptName;
    /**
     * 项目执行科室代码 执行此费用项目科室代码
     */
    private String executeDeptCode;

    /**
     * 标准执行科室代码(学科类型代码)
     */
    private String executeDeptCodeStandard;
    /**
     * 项目执行科室名称 执行此费用项目科室名称
     */
    private String executeDeptName;
    /**
     * 规则科室编码 事前：开单科室 事中/事后：执行科室
     */
    // @ApiModelProperty(value = "规则科室编码 事前：开单科室 事中/事后：执行科室")
    private String deptCode;
    /**
     * 规则科室名称 事前：开单科室 事中/事后：执行科室
     */
    // @ApiModelProperty(value = "规则科室名称 事前：开单科室 事中/事后：执行科室")
    private String deptName;
    /**
     * 医嘱流水号
     */
    private String orderId;
    /**
     * 门诊处方流水号
     */
    private String receiptNum;
    /**
     * 是否医保 0-自费、1-医保
     */
    private String isIns;
    /**
     * 父医嘱id 只有住院场景填写
     */
    private String orderParentId;
    /**
     * 医嘱项目代码 只有住院场景填写
     */
    private String orderItemCode;
    /**
     * 医嘱项目名称 只有住院场景填写
     */
    private String orderItemName;
    /**
     * 开嘱时间 只有住院场景填写
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date orderDate;
    /**
     * 执行时间 只有住院场景填写
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date executeDate;
    /**
     * 停止时间 只有住院场景填写
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date stopDate;
    /**
     * 长期标志 0-非长期医嘱、1-长期医嘱；只有住院场景填写
     */
    private String signValidity;
    /**
     * 医嘱组号 只有住院场景填写
     */
    private String groupNo;
    /**
     * 主医嘱标志 只有住院场景填写
     */
    private String signMain;
    /**
     * 医嘱状态 只有住院场景填写
     */
    private String orderStatus;
    /**
     * 医嘱类型 只有住院场景填写
     */
    private String orderType;
    /**
     * 开嘱病区代码 只有住院场景填写
     */
    private String orderWardCode;
    /**
     * 规格 只有住院场景填写
     */
    private String spec;
    /**
     * 单位剂量 只有住院场景填写
     */
    private String dose;
    /**
     * 剂量单位 只有住院场景填写
     */
    private String doseUnit;
    /**
     * 一次用量单位 只有住院场景填写
     */
    private String amountUnit;
    /**
     * 总量 只有住院场景填写
     */
    private String total;
    /**
     * 总量单位 只有住院场景填写
     */
    private String totalUnit;
    /**
     * 出院带药标志 只有住院场景填写
     */
    private String curryMedSign;
    /**
     * 频次 只有住院场景填写
     */
    private String frequency;
    /**
     * 给药途径 只有住院场景填写
     */
    private String medWay;
    /**
     * 剂型 只有住院场景填写
     */
    private String form;

    public String getFeeId() {
        return feeId;
    }

    public void setFeeId(String feeId) {
        this.feeId = feeId;
    }

    public String getItemCode() {
        return itemCode;
    }

    public void setItemCode(String itemCode) {
        this.itemCode = itemCode;
    }

    public String getItemName() {
        return itemName;
    }

    public void setItemName(String itemName) {
        this.itemName = itemName;
    }

    public String getInsuranceCode() {
        return insuranceCode;
    }

    public void setInsuranceCode(String insuranceCode) {
        this.insuranceCode = insuranceCode;
    }

    public String getInsuranceName() {
        return insuranceName;
    }

    public void setInsuranceName(String insuranceName) {
        this.insuranceName = insuranceName;
    }

    public String getInsuranceGrade() {
        return insuranceGrade;
    }

    public void setInsuranceGrade(String insuranceGrade) {
        this.insuranceGrade = insuranceGrade;
    }

    public String getItemTypeCode() {
        return itemTypeCode;
    }

    public void setItemTypeCode(String itemTypeCode) {
        this.itemTypeCode = itemTypeCode;
    }

    public String getItemTypeName() {
        return itemTypeName;
    }

    public void setItemTypeName(String itemTypeName) {
        this.itemTypeName = itemTypeName;
    }

    public String getItemClassCode() {
        return itemClassCode;
    }

    public void setItemClassCode(String itemClassCode) {
        this.itemClassCode = itemClassCode;
    }

    public String getItemClassName() {
        return itemClassName;
    }

    public void setItemClassName(String itemClassName) {
        this.itemClassName = itemClassName;
    }

    public String getMijaProjectCode() {
        return mijaProjectCode;
    }

    public void setMijaProjectCode(String mijaProjectCode) {
        this.mijaProjectCode = mijaProjectCode;
    }

    public String getMijaProjectName() {
        return mijaProjectName;
    }

    public void setMijaProjectName(String mijaProjectName) {
        this.mijaProjectName = mijaProjectName;
    }

    public Date getChargeDate() {
        return chargeDate;
    }

    public void setChargeDate(Date chargeDate) {
        this.chargeDate = chargeDate;
    }

    public BigDecimal getAmount() {
        return amount;
    }

    public void setAmount(BigDecimal amount) {
        this.amount = amount;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public BigDecimal getFee() {
        return fee;
    }

    public void setFee(BigDecimal fee) {
        this.fee = fee;
    }

    public String getCurrWardCode() {
        return currWardCode;
    }

    public void setCurrWardCode(String currWardCode) {
        this.currWardCode = currWardCode;
    }

    public String getCurrDeptCode() {
        return currDeptCode;
    }

    public void setCurrDeptCode(String currDeptCode) {
        this.currDeptCode = currDeptCode;
    }

    public String getTeamCode() {
        return teamCode;
    }

    public void setTeamCode(String teamCode) {
        this.teamCode = teamCode;
    }

    public String getOrderDoctorCode() {
        return orderDoctorCode;
    }

    public void setOrderDoctorCode(String orderDoctorCode) {
        this.orderDoctorCode = orderDoctorCode;
    }

    public String getOrderDoctorName() {
        return orderDoctorName;
    }

    public void setOrderDoctorName(String orderDoctorName) {
        this.orderDoctorName = orderDoctorName;
    }

    public String getOrderDeptCode() {
        return orderDeptCode;
    }

    public void setOrderDeptCode(String orderDeptCode) {
        this.orderDeptCode = orderDeptCode;
    }

    public String getOrderDeptCodeStandard() {
        return orderDeptCodeStandard;
    }

    public void setOrderDeptCodeStandard(String orderDeptCodeStandard) {
        this.orderDeptCodeStandard = orderDeptCodeStandard;
    }

    public String getOrderDeptName() {
        return orderDeptName;
    }

    public void setOrderDeptName(String orderDeptName) {
        this.orderDeptName = orderDeptName;
    }

    public String getExecuteDeptCode() {
        return executeDeptCode;
    }

    public void setExecuteDeptCode(String executeDeptCode) {
        this.executeDeptCode = executeDeptCode;
    }

    public String getExecuteDeptCodeStandard() {
        return executeDeptCodeStandard;
    }

    public void setExecuteDeptCodeStandard(String executeDeptCodeStandard) {
        this.executeDeptCodeStandard = executeDeptCodeStandard;
    }

    public String getExecuteDeptName() {
        return executeDeptName;
    }

    public void setExecuteDeptName(String executeDeptName) {
        this.executeDeptName = executeDeptName;
    }

    public String getDeptCode() {
        return deptCode;
    }

    public void setDeptCode(String deptCode) {
        this.deptCode = deptCode;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public String getOrderId() {
        return orderId;
    }

    public void setOrderId(String orderId) {
        this.orderId = orderId;
    }

    public String getReceiptNum() {
        return receiptNum;
    }

    public void setReceiptNum(String receiptNum) {
        this.receiptNum = receiptNum;
    }

    public String getIsIns() {
        return isIns;
    }

    public void setIsIns(String isIns) {
        this.isIns = isIns;
    }

    public String getOrderParentId() {
        return orderParentId;
    }

    public void setOrderParentId(String orderParentId) {
        this.orderParentId = orderParentId;
    }

    public String getOrderItemCode() {
        return orderItemCode;
    }

    public void setOrderItemCode(String orderItemCode) {
        this.orderItemCode = orderItemCode;
    }

    public String getOrderItemName() {
        return orderItemName;
    }

    public void setOrderItemName(String orderItemName) {
        this.orderItemName = orderItemName;
    }

    public Date getOrderDate() {
        return orderDate;
    }

    public void setOrderDate(Date orderDate) {
        this.orderDate = orderDate;
    }

    public Date getExecuteDate() {
        return executeDate;
    }

    public void setExecuteDate(Date executeDate) {
        this.executeDate = executeDate;
    }

    public Date getStopDate() {
        return stopDate;
    }

    public void setStopDate(Date stopDate) {
        this.stopDate = stopDate;
    }

    public String getSignValidity() {
        return signValidity;
    }

    public void setSignValidity(String signValidity) {
        this.signValidity = signValidity;
    }

    public String getGroupNo() {
        return groupNo;
    }

    public void setGroupNo(String groupNo) {
        this.groupNo = groupNo;
    }

    public String getSignMain() {
        return signMain;
    }

    public void setSignMain(String signMain) {
        this.signMain = signMain;
    }

    public String getOrderStatus() {
        return orderStatus;
    }

    public void setOrderStatus(String orderStatus) {
        this.orderStatus = orderStatus;
    }

    public String getOrderType() {
        return orderType;
    }

    public void setOrderType(String orderType) {
        this.orderType = orderType;
    }

    public String getOrderWardCode() {
        return orderWardCode;
    }

    public void setOrderWardCode(String orderWardCode) {
        this.orderWardCode = orderWardCode;
    }

    public String getSpec() {
        return spec;
    }

    public void setSpec(String spec) {
        this.spec = spec;
    }

    public String getDose() {
        return dose;
    }

    public void setDose(String dose) {
        this.dose = dose;
    }

    public String getDoseUnit() {
        return doseUnit;
    }

    public void setDoseUnit(String doseUnit) {
        this.doseUnit = doseUnit;
    }

    public String getAmountUnit() {
        return amountUnit;
    }

    public void setAmountUnit(String amountUnit) {
        this.amountUnit = amountUnit;
    }

    public String getTotal() {
        return total;
    }

    public void setTotal(String total) {
        this.total = total;
    }

    public String getTotalUnit() {
        return totalUnit;
    }

    public void setTotalUnit(String totalUnit) {
        this.totalUnit = totalUnit;
    }

    public String getCurryMedSign() {
        return curryMedSign;
    }

    public void setCurryMedSign(String curryMedSign) {
        this.curryMedSign = curryMedSign;
    }

    public String getFrequency() {
        return frequency;
    }

    public void setFrequency(String frequency) {
        this.frequency = frequency;
    }

    public String getMedWay() {
        return medWay;
    }

    public void setMedWay(String medWay) {
        this.medWay = medWay;
    }

    public String getForm() {
        return form;
    }

    public void setForm(String form) {
        this.form = form;
    }
}
